CREATE PROCEDURE [dbo].[PDA_InsertHavalehRow]
    @Id NUMERIC(18, 0),
    @GoodsCode VARCHAR(17),
    @WarehouseCode VARCHAR(3),
	@Qty MONEY
AS
BEGIN
    IF EXISTS
    (
        SELECT 1
        FROM dbo.TmpHavaleh
        WHERE Id_Havaleh = @Id
              AND Sender = @WarehouseCode
              AND K_Code = @GoodsCode
    )
    BEGIN

        UPDATE dbo.TmpHavaleh
        SET K_Qty1 = K_Qty1 + @Qty
        WHERE Id_Havaleh = @Id
              AND Sender = @WarehouseCode
              AND K_Code = @GoodsCode;
    END;
    ELSE
    BEGIN

        INSERT INTO dbo.TmpHavaleh
        (
            Id_Havaleh,
            Radif,
            Sender,
            Reciver,
            K_Code,
            R_Unit1_2,
            Exp_Flag,
            Point_Flag,
            Price_Omdeh,
            Serial_Flag,
            Make_Flag,
            Hamrah_Flag,
            Price_KHarid,
            Price_Forosh,
            K_Qty1,
            CtrMojodi,
            Cooperative_Flag,
            Takhfif_Flag,
            K_Qty2,
            Price_Consumer,
            Price_Finish
        )
        (SELECT @Id,
                1,
                @WarehouseCode,
                '10000',
                @GoodsCode,
                K.R_Unit1_2,
                K.Exp_Flag,
                K.Point_Flag,
                A.Price_Omdeh,
                K.Serial_flag,
                K.Make_Flag,
                K.Hamrah_Flag,
                A.Price_Kharid,
                A.Price_Forosh,
                @Qty,
                K.CtrMojodi,
                '0',
                '0',
                1,
                A.Price_Consumer,
                A.Price_Finish
         FROM dbo.KalaId K
             LEFT JOIN dbo.Anbar A
                 ON A.A_Code = @WarehouseCode
                    AND A.K_Code = K.K_Code
         WHERE K.K_Code = @GoodsCode);
    END;
END;